package com.example.check_in.service;


import com.example.model.check_in.CheckIn;
import com.example.model.check_in.CheckInData;
import com.example.model.check_in.OrderDo;
import com.example.model.check_in.ScheduleCheckIn;
import com.example.model.payment.PaymentResultVo;

import java.math.BigDecimal;
import java.util.List;

public interface CheckInService {

    CheckIn start();

    //输入信息
    CheckIn enterInfo(OrderDo order);

    //有旧订单时加载旧订单
    CheckIn loadCheckIn();

    //办理完成
    PaymentResultVo makePayment(String paymentType, BigDecimal pay);

    PaymentResultVo delayPay(Long checkInId, String paymentType, BigDecimal pay);

    void clear();

    List<CheckIn> list(CheckIn checkIn);

    int delete(Long id);

    CheckIn get(Long id);

    void checkOut(Long checkInId);

    List<CheckIn> checkOutList();

    Boolean isEnable(Long roomId, String checkInDate);

    CheckInData listData(String type);

    CheckInData listDataByRoomType(String type, String roomType);
}
